package com.lanlion.porlet.common;

/**
 * 红包发放返回结果实体类
 */
@CommonEntityFileAnnotation(type = "class",name = "WechatRedPackView")
public class WechatRedPackView {

    //SUCCESS/FAIL 此字段是通信标识，非红包发放结果标识，红包发放是否成功需要查看result_code来判断
    @CommonEntityFileAnnotation(type = "String",name = "return_code")
    private String returnCode;

    //返回信息，如非空，为错误原因 签名失败 参数格式校验错误
    @CommonEntityFileAnnotation(type = "String",name = "return_msg")
    private String returnMsg;

    //SUCCESS/FAIL注意：当状态为FAIL时，存在业务结果未明确的情况。所以如果状态是FAIL，请务必再请求一次查询接口[请务必关注错误代码（err_code字段）
    // 通过查询得到的红包状态确认此次发放的结果。]，以确认此次发放的结果。
    @CommonEntityFileAnnotation(type = "String",name = "result_code")
    private String resultCode;

    //错误码信息
    @CommonEntityFileAnnotation(type = "String",name = "err_code")
    private String errCode;

    //结果信息描述
    @CommonEntityFileAnnotation(type = "String",name = "err_code_des")
    private String errCodeDes;

    //商户订单号（每个订单号必须唯一） 组成：mch_id+yyyymmdd+10位一天内不能重复的数字
    @CommonEntityFileAnnotation(type = "String",name = "mch_billno")
    private String mchBillno;

    //微信支付分配的商户号
    @CommonEntityFileAnnotation(type = "String",name = "mch_id")
    private String mchId;

    //商户appid，接口传入的所有appid应该为公众号的appid（在mp.weixin.qq.com申请的），不能为APP的appid（在open.weixin.qq.com申请的）。
    @CommonEntityFileAnnotation(type = "String",name = "wxappid")
    private String appid;

    //接受收红包的用户 用户在wxappid下的openid
    @CommonEntityFileAnnotation(type = "String",name = "re_openid")
    private String reOpenid;

    //付款金额，单位分
    @CommonEntityFileAnnotation(type = "String",name = "total_amount")
    private int totalAmount;

    //红包订单的微信单号
    @CommonEntityFileAnnotation(type = "String",name = "sendListid")
    private String sendListid;

    //SENDING:发放中
    //SENT:已发放待领取
    //FAILED：发放失败
    //RECEIVED:已领取
    //RFUND_ING:退款中
    //REFUND:已退款
    @CommonEntityFileAnnotation(type = "String",name = "status")
    private String status;

    //API:通过API接口发放
    //UPLOAD:通过上传文件方式发放
    //ACTIVITY:通过活动方式发放
    @CommonEntityFileAnnotation(type = "String",name = "send_type")
    private String sendType;

    //GROUP:裂变红包
    //NORMAL:普通红包
    @CommonEntityFileAnnotation(type = "String",name = "hb_type")
    private String hbType;

    //红包个数
    @CommonEntityFileAnnotation(type = "String",name = "total_num")
    private String totalNum;


    //红包发送时间
    @CommonEntityFileAnnotation(type = "String",name = "send_time")
    private String sendTime;

    //金额
    @CommonEntityFileAnnotation(type = "String",name = "amount")
    private int amount;

    //接收时间
    @CommonEntityFileAnnotation(type = "String",name = "rcv_time")
    private String rcvTime;

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getSendType() {
        return sendType;
    }

    public void setSendType(String sendType) {
        this.sendType = sendType;
    }

    public String getHbType() {
        return hbType;
    }

    public void setHbType(String hbType) {
        this.hbType = hbType;
    }

    public String getTotalNum() {
        return totalNum;
    }

    public void setTotalNum(String totalNum) {
        this.totalNum = totalNum;
    }

    public String getSendTime() {
        return sendTime;
    }

    public void setSendTime(String sendTime) {
        this.sendTime = sendTime;
    }

    public int getAmount() {
        return amount;
    }

    public void setAmount(int amount) {
        this.amount = amount;
    }

    public String getRcvTime() {
        return rcvTime;
    }

    public void setRcvTime(String rcvTime) {
        this.rcvTime = rcvTime;
    }

    public String getReturnCode() {
        return returnCode;
    }

    public void setReturnCode(String returnCode) {
        this.returnCode = returnCode;
    }

    public String getReturnMsg() {
        return returnMsg;
    }

    public void setReturnMsg(String returnMsg) {
        this.returnMsg = returnMsg;
    }

    public String getResultCode() {
        return resultCode;
    }

    public void setResultCode(String resultCode) {
        this.resultCode = resultCode;
    }

    public String getErrCode() {
        return errCode;
    }

    public void setErrCode(String errCode) {
        this.errCode = errCode;
    }

    public String getErrCodeDes() {
        return errCodeDes;
    }

    public void setErrCodeDes(String errCodeDes) {
        this.errCodeDes = errCodeDes;
    }

    public String getMchBillno() {
        return mchBillno;
    }

    public void setMchBillno(String mchBillno) {
        this.mchBillno = mchBillno;
    }

    public String getMchId() {
        return mchId;
    }

    public void setMchId(String mchId) {
        this.mchId = mchId;
    }

    public String getAppid() {
        return appid;
    }

    public void setAppid(String appid) {
        this.appid = appid;
    }

    public String getReOpenid() {
        return reOpenid;
    }

    public void setReOpenid(String reOpenid) {
        this.reOpenid = reOpenid;
    }

    public int getTotalAmount() {
        return totalAmount;
    }

    public void setTotalAmount(int totalAmount) {
        this.totalAmount = totalAmount;
    }

    public String getSendListid() {
        return sendListid;
    }

    public void setSendListid(String sendListid) {
        this.sendListid = sendListid;
    }
}
